﻿<!--_meta 作为公共模版分离出去-->
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="renderer" content="webkit|ie-comp|ie-stand">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
<meta http-equiv="Cache-Control" content="no-siteapp" />
<link rel="Bookmark" href="/favicon.ico" >
<link rel="Shortcut Icon" href="/favicon.ico" />
<!--[if lt IE 9]>
<script type="text/javascript" src="lib/html5shiv.js"></script>
<script type="text/javascript" src="lib/respond.min.js"></script>
<![endif]-->
<link rel="stylesheet" type="text/css" href="static/h-ui/css/H-ui.min.css" />
<link rel="stylesheet" type="text/css" href="static/h-ui.admin/css/H-ui.admin.css" />
<link rel="stylesheet" type="text/css" href="lib/Hui-iconfont/1.0.8/iconfont.css" />
<link rel="stylesheet" type="text/css" href="static/h-ui.admin/skin/default/skin.css" id="skin" />
<link rel="stylesheet" type="text/css" href="static/h-ui.admin/css/style.css" />
<!--[if IE 6]>
<script type="text/javascript" src="lib/DD_belatedPNG_0.0.8a-min.js" ></script>
<script>DD_belatedPNG.fix('*');</script>
<![endif]-->
<!--/meta 作为公共模版分离出去-->

<title>新建网站角色 - 管理员管理 - H-ui.admin v3.1</title>
<meta name="keywords" content="H-ui.admin v3.1,H-ui网站后台模版,后台模版下载,后台管理系统模版,HTML后台模版下载">
<meta name="description" content="H-ui.admin v3.1，是一款由国人开发的轻量级扁平化网站后台模板，完全免费开源的网站后台管理系统模版，适合中小型CMS后台系统。">
</head>
<body>
<article class="page-container">
	<form action="" method="post" class="form form-horizontal" id="form-admin-role-add">
		<div class="row cl">
			<label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>角色名称：</label>
			<div class="formControls col-xs-8 col-sm-9">
				<input type="hidden" class="input-text" value="" id="roleId" name="roleId">
				<input type="text" class="input-text" value="" placeholder="" id="roleName" name="roleName">
			</div>
		</div>
		<div class="row cl">
			<label class="form-label col-xs-4 col-sm-3">所属部门：</label>
			<div class="formControls col-xs-8 col-sm-9">
				<input type="text" class="input-text" value="" placeholder="" id="deptName" name="deptName">
			</div>
		</div>
		<div class="row cl">
			<label class="form-label col-xs-4 col-sm-3">备注：</label>
			<div class="formControls col-xs-8 col-sm-9">
				<input type="text" class="input-text" value="" placeholder="" id="description" name="remark">
			</div>
		</div>
		<div class="row cl">
			<label class="form-label col-xs-4 col-sm-3">网站角色：</label>
			<div class="formControls col-xs-8 col-sm-9 permissionDiv">
			</div>
		</div>
		<div class="row cl">
			<div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-3">
				<button type="submit" class="btn btn-success radius" id="admin-role-save" name="admin-role-save"><i class="icon-ok"></i> 确定</button>
			</div>
		</div>
	</form>
</article>

<!--_footer 作为公共模版分离出去-->
<script type="text/javascript" src="lib/jquery/1.9.1/jquery.min.js"></script> 
<script type="text/javascript" src="lib/layer/2.4/layer.js"></script>
<script type="text/javascript" src="static/h-ui/js/H-ui.min.js"></script> 
<script type="text/javascript" src="static/h-ui.admin/js/H-ui.admin.js"></script> <!--/_footer 作为公共模版分离出去-->

<!--请在下方写此页面业务相关的脚本-->
<script type="text/javascript" src="lib/jquery.validation/1.14.0/jquery.validate.js"></script>
<script type="text/javascript" src="lib/jquery.validation/1.14.0/validate-methods.js"></script>
<script type="text/javascript" src="lib/jquery.validation/1.14.0/messages_zh.js"></script>
<script type="text/javascript">
$(function(){
	initPermission();

	var roleId = getParamForUrl("roleId");
	if (roleId != "" && roleId != undefined && roleId != "undefined") {
		initRoleInfo(roleId);
	}
	$(".permission-list dt input:checkbox").click(function(){
		$(this).closest("dl").find("dd input:checkbox").prop("checked",$(this).prop("checked"));
	});
	$(".permission-list2 dd input:checkbox").click(function(){
		var l =$(this).parent().parent().find("input:checked").length;
		var l2=$(this).parents(".permission-list").find(".permission-list2 dd").find("input:checked").length;
		if($(this).prop("checked")){
			$(this).closest("dl").find("dt input:checkbox").prop("checked",true);
			$(this).parents(".permission-list").find("dt").first().find("input:checkbox").prop("checked",true);
		}
		else{
			if(l==0){
				$(this).closest("dl").find("dt input:checkbox").prop("checked",false);
			}
			if(l2==0){
				$(this).parents(".permission-list").find("dt").first().find("input:checkbox").prop("checked",false);
			}
		}
	});
	
	$("#form-admin-role-add").validate({
		rules:{
			roleName:{
				required:true,
			},
		},
		onkeyup:false,
		focusCleanup:true,
		success:"valid",
		submitHandler:function(form){
			var index = parent.layer.getFrameIndex(window.name);
			$(form).ajaxSubmit({
				type: 'post',
				url: '../sysAccountApi/saveRoleInfo.do',
				async:true,
				data:{
					params:JSON.stringify($(form).serializeObject())
				},
				success:function(data){
					if(data.respData.respCode == 10000){
						if(data.respData.result == 1){
							layer.msg('信息保存成功!',{icon: 6,time:2000});
							parent.location.reload();
							// parent.$('.btn-refresh').click();
							parent.layer.close(index);
						}else{
							layer.msg('信息保存失败!',{icon: 6,time:2000});
							parent.layer.close(index);
						}

					}else{
						layer.msg(data.respData.respMsg,{icon: 6,time:2000});
						parent.location.reload();
						// parent.$('.btn-refresh').click();
					}
				},
				error:function(data){
					layer.msg('服务异常，请联系管理员处理!',{icon: 6,time:3000});
					// parent.layer.close(index);
				}
			});
		}
	});
});

/**
 *	初始化角色详情信息
 *
 * @param roleId
 */
function initRoleInfo(roleId){
	var service = {};
	service.roleId = roleId;
	$.ajax({
		type: 'post',
		url: '../sysAccountApi/querySysRoleInfoById.do',
		async:false,
		data:{
			params:JSON.stringify(service)
		},
		success:function(data){
			if(data.respData.respCode == 10000){
				var roleInfo = data.respData.result;
				$("#roleId").val(roleInfo.roleId);
				$("#roleName").val(roleInfo.roleName);
				$("#deptName").val(roleInfo.deptName);
				$("#description").val(roleInfo.description);
				if(roleInfo.menuVoList != null){
					$.each(roleInfo.menuVoList, function (index, val) {
						$(":checkbox[value='"+val.menuId+"']").prop("checked",true);
					});
				}

			}else{
				layer.msg('未查询到数据!',{icon: 6,time:2000});
			}
		},
		error:function(data){
			layer.msg('服务异常，请联系管理员处理!',{icon: 6,time:3000});
		}
	});
}

//初始化权限列表集合
function initPermission(){
	var service = {};
	service.menuType = 0;
	$.ajax({
		type: 'post',
		url: '../sysAccountApi/queryAllMenus.do',
		async:false,
		dataType:'json',
		data:{
			params:JSON.stringify(service)
		},
		success:function(data){
			$(".permissionDiv").html("");
			if(data.respData.respCode == 10000){
				var permsList = data.respData.result;
				if(permsList.length > 0){
					//1.一级目录
					$.each(permsList,function(index, dirObj) {
						var $dirEle = $("<dl class=\"permission-list\"></dl>");
						$dirEle.append("<dt><label><input type=\"checkbox\" value=\""+dirObj.menuId+"\" name=\"direCheck\" id=\"direCheck"+dirObj.menuId+"\">"+dirObj.menuName+"</label></dt>");
						//2.二级菜单
						var $menuComp = $("<dd></dd>");
						$.each(dirObj.childList,function(i, menuObj) {
							var $menuEl = $("<dl class=\"cl permission-list2\"></dl>");
							$menuEl.append("<dt><label class=\"\"><input type=\"checkbox\" value=\""+menuObj.menuId+"\" name=\"menuCheck\" id=\"menuCheck_"+menuObj.menuId+"\">"+menuObj.menuName+"</label></dt>");
							//3.三级权限
							var $permsComp = $("<dd></dd>");
							$.each(menuObj.childList,function(k, permsObj) {
								var $permsEl = $("<label class=\"\"><input type=\"checkbox\" value=\""+permsObj.permsId+"\" name=\"permsCheck\" id=\"permsCheck_"+permsObj.permsId+"\">"+permsObj.permsDesc+"</label>");
								$permsComp.append($permsEl);
							});
							$menuEl.append($permsComp);
							$menuComp.append($menuEl);
						});
						$dirEle.append($menuComp);
						$(".permissionDiv").append($dirEle);
					})
				}
			}else{
				layer.msg('未查询到数据!',{icon: 6,time:2000});
			}
		},
		error:function(data){
			layer.msg('服务异常，请联系管理员处理!',{icon: 6,time:3000});
		}
	});
}

$.fn.serializeObject = function () {
	var o = {};
	var a = this.serializeArray();
	$.each(a, function () {
		if (o[this.name]) {
			if (!o[this.name].push) {
				o[this.name] = [o[this.name]];
			}
			o[this.name].push(this.value || '');
		} else {
			o[this.name] = this.value || '';
		}
	});
	return o;
};

//获取表格id值
function getParamForUrl(param) {
	var url = location.href;
	var i = url.indexOf('?');
	if (i == -1) return;
	var querystr = url.substr(i + 1);
	var arr1 = querystr.split('&');
	var arr2 = new Object();
	for (i in arr1) {
		var ta = arr1[i].split('=');
		arr2[ta[0]] = ta[1];
	}
	return arr2[param];
}
</script>
<!--/请在上方写此页面业务相关的脚本-->
</body>
</html>